

import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.*;
import javax.swing.border.MatteBorder;
import javax.swing.JScrollPane;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.awt.event.*;




public class Ventana extends JFrame implements ActionListener {
	
	
	private JTextArea area2;
	private JTextArea area1;
	private JTextArea area3;
	private JScrollPane scroll1;
	private JScrollPane scroll2;
	private JScrollPane scroll3;
	private JButton jbt_1;
	private JButton jbt_2;
	private JButton jbt_3;
	private MatteBorder borde;
	private Color color;
	private JMenuBar barraMenu;
	
	private JMenu menuArchivo;
	private JMenuItem menuNuevo;
	private JMenuItem menuAbrir;
	private JMenuItem menuSalir;
	private JMenuItem menuGuardar;
	
	private ImageIcon INuevo=new ImageIcon("imagenes/nuevo.gif");
	private ImageIcon IAbrir=new ImageIcon("imagenes/abrir.gif");
	private ImageIcon IGuardar=new ImageIcon("imagenes/guardar.gif");
	private ImageIcon ISalir=new ImageIcon("imagenes/salir.gif");
	

	//private JFileChooser m_chooser;
	private String nombre=" ";
	
	public Ventana (){
		super("CVS");
		setBounds(140,140,800,600);
		setLayout(null);
		
		setResizable(false);
		setLocationRelativeTo(null);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		color=color.black;
		borde=new MatteBorder(4,4,4,4,color);
		area2=new JTextArea();
		area2.setBorder(borde);		
		scroll2=new JScrollPane(area2);
		scroll2.setBounds(396,0,399,372);
		area1=new JTextArea();
		area1.setBorder(borde);
		scroll1=new JScrollPane(area1);
		scroll1.setBounds(0,0,400,372);
		area3=new JTextArea();
		area3.setBorder(borde);
		scroll3=new JScrollPane(area3);
		scroll3.setBounds(0,370,795,100);
		
		add(scroll1);
		add(scroll2);
		add(scroll3);

		
		
		
		jbt_1=new JButton("Usuario");
		jbt_3=new JButton("nuevo");
		jbt_1.setBounds(20,480,100,25);
		
		jbt_3.setBounds(20,515,100,25);
		add(jbt_1);
		add(jbt_3);
		
		barraMenu= new JMenuBar();
		menuArchivo= new JMenu("Archivo");
		menuArchivo.setMnemonic( 'A' );
		menuAbrir=new JMenuItem("Abrir");
		menuAbrir.setMnemonic( 'A' );
		menuAbrir.addActionListener(this);
		menuAbrir.setIcon(IAbrir);
		menuNuevo=new JMenuItem("Nuevo");
		menuNuevo.setMnemonic( 'N' );
		menuNuevo.addActionListener(this);
		menuNuevo.setIcon(INuevo);
		menuSalir=new JMenuItem("Salir");
		menuSalir.setMnemonic( 'S' );
		menuSalir.addActionListener(this);
		menuSalir.setIcon(ISalir);
		menuGuardar=new JMenuItem("Guardar");
		menuGuardar.setMnemonic( 'G' );
		menuGuardar.addActionListener(this);
		menuGuardar.setIcon(IGuardar);
		barraMenu.add(menuArchivo);
		add(barraMenu);
		setJMenuBar(barraMenu);
		
		menuArchivo.add(menuNuevo);
		menuArchivo.add(menuAbrir);
		menuArchivo.add(menuGuardar);
		menuArchivo.add(menuSalir);

		

		jbt_3.addActionListener(this);
		jbt_1.addActionListener(this);

		
		
		
		
	}
	
			
	public void actionPerformed(ActionEvent e) {
				
		if(e.getSource()==jbt_3 || e.getSource()==menuNuevo){
			area2.setText("");
		}	
	 	if(e.getSource()==menuSalir) dispose();
	 	if(e.getSource()==menuAbrir)
	 	{
	 	    Abrir ();	
	 	}
	 	if(e.getSource()==menuGuardar)
	 	{
		Guardar (); 	   
	 	}
	 	if(e.getSource()==jbt_1){
	 		DatoUsuario dato;
	 		dato=new DatoUsuario(area2);
	 	}

	}
	
	
	 private void Guardar() {

	 		String Text="";
	 		try
	 		{
	 			JFileChooser fc=new JFileChooser(System.getProperty("user.dir"));
	 			fc.showSaveDialog(this);
	 			File Guardar =fc.getSelectedFile();
	 			if(Guardar !=null)
	 			{
		 			nombre=fc.getSelectedFile().getName();
		 			FileWriter  Guardx=new FileWriter(Guardar);
		 			Guardx.write(area2.getText());
		 			Guardx.close();
	 		    }
	 				 			
	 		 }
	 	   catch(IOException ioe){}	
		
	}


	private void Abrir() {
		String Text="";
        try
		{
       		JFileChooser fc=new JFileChooser(System.getProperty("user.dir"));
 			fc.showOpenDialog(this);
 			File Abrir=fc.getSelectedFile(); //Devuelve el File que vamos a leer
 			
 			if(Abrir!=null)
 			{
 				nombre=fc.getSelectedFile().getName();
 			}
 	
 			if(Abrir!=null)
 			{
 				area2.setText("");
 				area1.setText("");
 				FileReader Fichero=new FileReader(Abrir);
 				BufferedReader leer=new BufferedReader(Fichero);
 				while((Text=leer.readLine())!=null)
 					{
 					area2.append(Text+ "\n"); //append Concatena la linea leida
 					area1.append(Text+ "\n");
 					}
 					
 		  		leer.close();
 			}
 			
 		}
 		catch(IOException ioe){}
	}


	public static void main (String arg[]){
			Ventana v = new Ventana();
			v.setVisible(true);
			
		}

}


		
	
